#include <stdio.h>
#include <string.h>
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/msg.h>
#include <stdbool.h>
#include <unistd.h>
#include <dirent.h>
#include "tools.h"
#include "msg.h"

Msg msg;

void enter_acc(void)
{
	char temp_pass[20] = {};
	strcpy(temp_pass, msg.cil.pass);

	int flag = 0;
	if(fing_acc(msg.cil.acc))
	{
		chdir(DATA_PATH);
		load_data(msg.cil.acc, &msg.cil, sizeof(Cilent));
		if(msg.cil.error_cnt == 3)
		{
			flag = 2;
		}
		if(msg.cil.error_cnt < 3 && 0 == strcmp(temp_pass, msg.cil.pass))
		{
			flag = 1;
			msg.cil.error_cnt = 0;
		}
		else
		{
			msg.cil.error_cnt ++;
		}
		save_data(msg.cil.acc, &msg.cil, sizeof(Cilent), 1);
		chdir("..");
	}

	snd_flag(msg.pid, flag);

	if(1 == flag)
	{
		msg.type = msg.pid;
		msg_snd(&msg);
	}
}

int main()
{
	init_msg(110);
	while(true)
	{
		msg_rcv(&msg, enter_type);
		enter_acc();
	}
}
